

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
namespace project.imagenes_dir
{
    public partial class main_imagenes : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            lo.seguridad(sf.entero(HttpContext.Current.Session["adminhondaab1"]));
            if (Request["idb"] == null & Request["idarticulo"] == null & Request["id"] == null)
            {

               
            }
            PanelAviso.Visible = false;
            if (!Page.IsPostBack)
            {

                hpllistado.NavigateUrl = "../imagenes_dir/listado_imagenes.aspx?idarticulo=" + sf.entero(Request["idarticulo"]);

                lo.comboRellenar(cmbidcategoriasimagenes, "select idcategoriasimagenes,nombre from categoriasimagenes ", ctes.conStringAdoGeneral, "Seleccione");

                // Borrar
                if (Request["idb"] != null)
                {

                    string imag = imagenes.getimagenes(sf.entero(Request["idb"])).imagen;
                    if (imag != "")
                    {
                        if (System.IO.File.Exists(Server.MapPath(imag)))
                            System.IO.File.Delete(Server.MapPath(imag));
                    }
                    imagenes.Delete(sf.entero(Request["idb"]));


                    Response.Redirect("./listado_imagenes.aspx?idarticulo=" + sf.entero(Request["idarticulo"]));
                }

                if (Request["idarticulo"] != null)
                {
                    hplvolver.Visible = true;
                    hplvolver.NavigateUrl = "../articulos_dir/main_articulos.aspx?id=" + sf.entero(Request["idarticulo"]);

                }
 
                // Editar
                if (Request["id"] != null)
                {
                    imagenes res = new imagenes(sf.entero(Request["id"]));


                    if (sf.cadena(res.imagen) != "")
                    {
                        imgimagen.ImageUrl = res.imagen;
                        imgimagen.Visible = true;
                        //imgNoticia.AlternateText = " " + res.titulo;
                        btnborrarimagenimagen.Visible = true;
                        FileUploadImagenimagen.Visible = false;
                    }






                    txttitulo.Text = res.titulo;

 


                    //lo.comboSeleccionarItem(cmbidcategoriasimagenes, sf.cadena(res.idcategoriasimagenes), "Id");

                }
                else
                {
                    butModificar.Text = "Insertar";
                }
            }
        }
        protected void butModificar_Click(object sender, EventArgs e)
        {
            lblinfo.Text = "";
            // modificar
            if (Request["id"] != null)
            {
                imagenes res = new imagenes(sf.entero(Request["id"]));



                if (FileUploadImagenimagen.PostedFile == null) { }
                else
                {
                    if (FileUploadImagenimagen.FileName != "")
                    {
                        if (!System.IO.File.Exists(Server.MapPath("../../bdimages/") + FileUploadImagenimagen.FileName))
                        {
                            string cad = Server.MapPath("../../bdimages/") + FileUploadImagenimagen.FileName;

                            MemoryStream mem = new MemoryStream();
                            mem = redimensionarImagen.Redimensiona(FileUploadImagenimagen.PostedFile.InputStream, 600, 72);
                            FileStream file = new FileStream(cad, System.IO.FileMode.CreateNew);

                            file.Write(mem.GetBuffer(), 0, sf.entero(mem.Position));
                            file.Flush();
                            file.Close();
                            file = null;

                            res.imagen = "../../bdimages/" + FileUploadImagenimagen.FileName;
                            //FileUploadImagenimagen.SaveAs(Server.MapPath("../../bdimages/") + FileUploadImagenimagen.FileName);
                            imgimagen.ImageUrl = res.imagen;
                            //imgimagen.AlternateText = " " + res.titulo;
                            imgimagen.Visible = true;
                            btnborrarimagenimagen.Visible = true;
                            FileUploadImagenimagen.Visible = false;
                        }
                        else
                        {
                            mensaje("El archivo ya existe, elija otro nombre", false);
                        }

                    }
                }


                //if (FileUploadImagenimagen.PostedFile == null) { }
                //else
                //{
                //    if (FileUploadImagenimagen.FileName != "")
                //    {
                //        if (!System.IO.File.Exists(Server.MapPath("../../bdimages/") + FileUploadImagenimagen.FileName))
                //        {
                //            res.imagen = "../../bdimages/" + FileUploadImagenimagen.FileName;
                //            FileUploadImagenimagen.SaveAs(Server.MapPath("../../bdimages/") + FileUploadImagenimagen.FileName);
                //            imgimagen.ImageUrl = res.imagen;
                //            //imgimagen.AlternateText = " " + res.titulo;
                //            imgimagen.Visible = true;
                //            btnborrarimagenimagen.Visible = true;
                //            FileUploadImagenimagen.Visible = false;
                //        }
                //        else
                //        {
                //            mensaje("El archivo ya existe, elija otro nombre", false);
                //        }

                //    }
                //}



                res.idarticulos = sf.entero(Request["idarticulo"]);



                res.idcategoriasimagenes = sf.entero(cmbidcategoriasimagenes.SelectedValue);



                res.titulo = sf.SafeSql(sf.cadena(txttitulo.Text));
                if (lblinfo.Text == "")
                {
                    res.Update();
                    res = null;
                    mensaje("Modificado con exito", true);
                }
            }
            // insertar...
            else
            {
                imagenes res = new imagenes();




                if (FileUploadImagenimagen.PostedFile == null) { }
                else
                {
                    if (FileUploadImagenimagen.FileName != "")
                    {
                        if (!System.IO.File.Exists(Server.MapPath("../../bdimages/") + FileUploadImagenimagen.FileName))
                        {
                            string cad = Server.MapPath("../../bdimages/") + FileUploadImagenimagen.FileName;

                            MemoryStream mem = new MemoryStream();
                            mem = redimensionarImagen.Redimensiona(FileUploadImagenimagen.PostedFile.InputStream, 600, 72);
                            FileStream file = new FileStream(cad, System.IO.FileMode.CreateNew);

                            file.Write(mem.GetBuffer(), 0, sf.entero(mem.Position));
                            file.Flush();
                            file.Close();
                            file = null;

                            res.imagen = "../../bdimages/" + FileUploadImagenimagen.FileName;
                            //FileUploadImagenimagen.SaveAs(Server.MapPath("../../bdimages/") + FileUploadImagenimagen.FileName);
                            imgimagen.ImageUrl = res.imagen;
                            //imgimagen.AlternateText = " " + res.titulo;
                            imgimagen.Visible = true;
                            btnborrarimagenimagen.Visible = true;
                            FileUploadImagenimagen.Visible = false;
                        }
                        else
                        {
                            mensaje("El archivo ya existe, elija otro nombre", false);
                        }

                    }
                }

                res.idarticulos = sf.entero(Request["idarticulo"]);


                res.idcategoriasimagenes = sf.entero(cmbidcategoriasimagenes.SelectedValue);


                res.titulo = sf.SafeSql(sf.cadena(txttitulo.Text));
                if (lblinfo.Text == "")
                {
                    imagenes.Insert(res);
                    res = null;
                    Panel1.Visible = false;
                    Panel2.Visible = true;
                    btnborrarimagenimagen.Enabled = false;
                    txttitulo.Enabled = false;
                    mensaje("Insertado con exito", true);
                }


            }
        }

 

        private void mensaje(string p, bool ok)
        {
            if (!ok)
                PanelAviso.CssClass = "error";
            else
                PanelAviso.CssClass = "aviso";
            lblinfo.Text = p;
            lblinfo.Visible = true;
            PanelAviso.Visible = true;
        }
 



        // funciones extra para campos extra


        protected void btnborrarimagenimagen_Click(object sender, EventArgs e)
        {
            imagenes res = new imagenes(sf.entero(Request["id"]));

            res.imagen = "";
            res.Update();
            imgimagen.Visible = false;
            btnborrarimagenimagen.Visible = false;
            //txtTextoAlternativoimagen.Text = "";

            if (System.IO.File.Exists(Server.MapPath(imgimagen.ImageUrl.ToString())))
                System.IO.File.Delete(Server.MapPath(imgimagen.ImageUrl.ToString()));
            FileUploadImagenimagen.Visible = true;


        }

        protected void btnnueva_Click(object sender, EventArgs e)
        {
            Response.Redirect("main_imagenes.aspx?idarticulo=" + sf.entero(Request["idarticulo"]));
        }

        protected void btnvolver_Click(object sender, EventArgs e)
        {
            Response.Redirect("../articulos_dir/main_articulos.aspx?id=" + sf.entero(Request["idarticulo"]));
        }

















    }
}
